package com.btpj.shop.entity;

import com.btpj.shop.dto.CategoryDto;
import lombok.Data;
import org.springframework.beans.BeanUtils;

import java.io.Serializable;
import java.util.Date;

/**
 * category 商品分类
 *
 * @author BTPJ
 */
@Data
public class Category implements Serializable {
    private Long id;

    /**
     * 分类级别（1：一级分类、2：二级分类）...
     */
    private Byte level;

    /**
     * 父类别ID
     */
    private Long parentId;

    /**
     * 名称
     */
    private String name;

    /**
     * 排序值（值越大越靠前）
     */
    private Integer sort;

    /**
     * 是否删除（0:未删除 1:已删除）
     */
    private Boolean isDeleted;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 更新时间
     */
    private Date updateTime;

    /**
     * 创建人ID
     */
    private Long createUser;

    /**
     * 更新人ID
     */
    private Long updateUser;

    private static final long serialVersionUID = 1L;

    /**
     * 将Category转化为CategoryDto
     *
     * @return Category转化后的CategoryDto
     */
    public CategoryDto category2Dto() {
        CategoryDto categoryDto = new CategoryDto();
        BeanUtils.copyProperties(this, categoryDto);
        return categoryDto;
    }
}